iT邦幫忙

2022 iThome 鐵人賽

DAY 1
0
AI & Data

上課了!李宏毅老師 機器學習 (2021)系列 第 1

機器學習基本概念(一)

  • 分享至 

  • xImage
  •  

機器學習(Machine Learning)就類似「找一個函式」。這個函式可以接受輸入,然後輸出正確答案。而機器學習的類別可以分為三種類別(types)。分別是迴歸(Rregression)、分類(classification),以及結構(Structure)。

  1. 迴歸: 函式的輸出為純量。
  2. 分類: 給定一組多個類別,函式的輸出為正確的類別。像是下棋也是一種分類的問題。
  3. 結構: 根據結構來創作影像或文章。

機器學習如何學習呢? 可以分為三個步驟。

第一個步驟就是找一個模型。舉例來說,如果要預測 Youtube 頻道的點閱人數。可以用 https://chart.googleapis.com/chart?cht=tx&chl=y%3Db%2Bwx_1 來當作模型。其中 https://chart.googleapis.com/chart?cht=tx&chl=y 就是明天的點閱人數。 https://chart.googleapis.com/chart?cht=tx&chl=x_1 就是前一天的觀看人數。這邊將前一天的觀看人數就是要餵入模型的特徵(feature)。而 https://chart.googleapis.com/chart?cht=tx&chl=bhttps://chart.googleapis.com/chart?cht=tx&chl=w 就是要從資料中學習(找出)的未知參數(unknown parameter)。而模型的樣子會需要領域知識來建立,但不見得一定是對的。

第二步驟就是要定義損失函數(Loss),也就是要定義「函式預估的結果」與「真實值」之間的差距怎麼來評估。在這邊用標記(Label)來表示真實的值。損失函數可以寫成

https://chart.googleapis.com/chart?cht=tx&chl=L%20%3D%20%5Cfrac%7B1%7D%7BN%7D%20%5Csum_n%20e_n

其中 https://chart.googleapis.com/chart?cht=tx&chl=e 根據需求可以有不同的計算方法。如

  1. mean absolute error (MAE)
  2. mean square error (MSE)
  3. 如果模型的輸出為機率分佈的變數,就可以用 cross-entropy 來計算損失。

第三步就是最佳化。這邊介紹梯度下降方法(Gradient Descent)。簡單的說,就是用一開始先選用一個 https://chart.googleapis.com/chart?cht=tx&chl=w ,之後將 https://chart.googleapis.com/chart?cht=tx&chl=Lhttps://chart.googleapis.com/chart?cht=tx&chl=whttps://chart.googleapis.com/chart?cht=tx&chl=w%5E0 作微分,藉此找出損失變小的方向。接著設定好學習速率(learning rate)。之後再更新 https://chart.googleapis.com/chart?cht=tx&chl=w 。最後當計算次數到達設定條件,或是真的找到微分為 0 時就停止。

要注意的是,梯度下降法所找到的是局部最佳解(local minima),而不是全域最佳解(global minima)。但真正在做低度下降時所面對的問題不是這個。至於是哪個日後會再解釋。


下一篇
機器學習基本概念(二)
系列文
上課了!李宏毅老師 機器學習 (2021)16
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言